package com.zg.common.core.dao.scf.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zg.common.core.dao.BaseEntity;
import com.zg.common.core.dao.ConditionType;
import com.zg.common.core.dao.QueryCondition;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 计划信息实体类
 * 对应数据库 PLAN_INFO 表
 *
 * @author 你的名字或团队名
 * @date 2025-07-19
 */
@Data
@NoArgsConstructor
@TableName("SCF_RAILWAY_PLAN")
public class RailwayPlan extends BaseEntity {
    /**
     * 计划号
     */
    @QueryCondition
    private String planNo;

    /**
     * 类型
     */
    @QueryCondition
    private String type;

    /**
     * 收货单位
     */
    @QueryCondition(type = ConditionType.LIKE)
    private String receiveUnit;

    /**
     * 日期
     */
    private Date planDate;

    /**
     * 发站
     */
    private String departStation;

    /**
     * 装车点
     */
    private String loadingPoint;

    /**
     * 矿点
     */
    private String minePoint;

    /**
     * 到站
     */
    private String arriveStation;

    /**
     * 卖方
     */
    private String seller;

    /**
     * 车数
     */
    private Integer trainCarCount;

    /**
     * 吨数
     */
    private BigDecimal quantity;

    /**
     * 下达日期
     */
    private Date issueDate;

    /**
     * 所属公司
     */
    @QueryCondition(type = ConditionType.LIKE)
    private String company;

    /**
     * 局别
     */
    private String bureau;

    /**
     * 运行状态
     */
    private String runStatus;

    private String coalType;

    @TableField(exist = false)
    @QueryCondition( type = ConditionType.BETWEEN, ignoreEmpty = false,filed = "planDate")
    private Date[] planDates;
}